/*
documentr - Edit, maintain, and present software documentation on the web.
Copyright (C) 2012-2013 Maik Schreiber
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package de.blizzy.documentr.markdown.macro.impl;
import static org.junit.Assert.*;
import static org.mockito.Mockito.*;
import org.apache.commons.lang3.StringEscapeUtils;
import org.junit.Before;
import org.junit.Test;
import org.mockito.Mock;
import de.blizzy.documentr.AbstractDocumentrTest;
import de.blizzy.documentr.markdown.macro.IMacroContext;
public class TwitterMacroTest extends AbstractDocumentrTest {
@Mock
private IMacroContext context;
private TwitterMacro runnable;
@Before
public void setUp() {
runnable = new TwitterMacro();
}
@Test
public void getHtml() {
when(context.getParameters()).thenReturn("\"searchParams\""); //$NON-NLS-1$
String html = runnable.getHtml(context);
@SuppressWarnings("nls")
String expectedHtml = "<script charset=\"UTF-8\" src=\"http://widgets.twimg.com/j/2/widget.js\"></script>\n" +
"<script>\n" +
"new TWTR.Widget({" +
"version: 2," +
"type: 'search'," +
"search: '" + StringEscapeUtils.escapeEcmaScript("\"searchParams\"") + "'," +
"interval: 15000," +
"title: ''," +
"subject: ''," +
"width: 300," +
"height: 300," +
"features: {" +
"scrollbar: true," +
"loop: false," +
"live: true," +
"behavior: 'default'" +
"}" +
"}).render().start(); require(['documentr/fixTwitterCss']);\n" +
"</script>\n";
assertEquals(expectedHtml, html);
}
}